package com.zhuiyun.educations.api.course.entity.DTO;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;

/**
 * @ClassName CourseDTO
 * @Description TODO 课程详细
 * @Author 杨友朋
 * @Date 2023/6/19 8:56
 **/
@Data
public class CourseDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private Integer id;
    /**
     * 课程标题
     */
    private String courseTitle;
    /**
     * 课程介绍
     */
    private String courseContent;
    /**
     * 父级科目id外键
     */
    private Integer parentSubjectId;
    /**
     * 科目id外键
     */
    private Integer subjectId;
    /**
     * 资料id外键
     */
    private Integer informationId;
    /**
     * 图片id外键
     */
    private Integer imageId;
    /**
     * 视频id外键
     */
    private Integer videoId;
    /**
     * 老师id外键
     */
    private Integer teacherId;
    /**
     * 课程状态上架0下架1待上架2
     */
    private Integer courseStatus;
    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern ="yyyy-MM-dd" )
    private Date createTime;
    /**
     * 修改时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern ="yyyy-MM-dd" )
    private Date updateTime;
    /**
     * 删除标识0显示1删除
     */
    private Integer delFlag;
    /**
     *付费类型0免费1付费
     */
    private Integer payType;
    /**
     * 课程类型（视频 0，文章 1，直播 2）
     */
    private Integer type;
    /**
     * 课程类型（视频 0，文章 1，直播 2）
     */
    private Integer priceId;
   /**
     * 子科目名称
     */
    private String className;
    /**
     * 科目类型
     */
    private String subjectType;
    /**
     * 教师姓名
     */
    private String tname;
    /**
     * 价钱
     */
    private Integer price;
    /**
     * 视频名称
     */
    private String videoName;
    /**
     * 图片名称
     */
    private String imageName;
    /**
     * 资料名称
     */
    private String informationName;
    /**
     * 资料表name
     */
    private String fileName;
    /**
     * 资料介绍
     */
    @Transient
    private String fileInfo;
}
